namespace DotNetNuke.Services.Wizards
{
    using System;

    /// -----------------------------------------------------------------------------
    /// <summary>
    /// The WizardCancelEventArgs class extends WizardEventArgs to provide a Cancel
    /// Property for the Event Properties.
    /// </summary>
    /// <remarks>
    /// </remarks>
    /// <history>
    /// [cnurse]	10/11/2004	created
    /// </history>
    /// -----------------------------------------------------------------------------
    public class WizardCancelEventArgs : WizardEventArgs
    {
        private bool m_Cancel;

        /// -----------------------------------------------------------------------------
        /// <summary>
        /// Constructs a default WizardEventArgs object
        /// </summary>
        /// <remarks>
        /// </remarks>
        /// <history>
        /// [cnurse]	10/10/2004	created
        /// </history>
        /// -----------------------------------------------------------------------------
        public WizardCancelEventArgs() : this(-1, -1, null)
        {
        }

        /// -----------------------------------------------------------------------------
        /// <summary>
        /// Constructs a custom WizardEventArgs object
        /// </summary>
        /// <remarks>
        /// </remarks>
        /// <param name="pageNo">The Page No where the Event happened</param>
        /// <param name="pages">The WizardPageCollection</param>
        /// <history>
        /// [cnurse]	10/10/2004	created
        /// </history>
        /// -----------------------------------------------------------------------------
        public WizardCancelEventArgs(int pageNo, WizardPageCollection pages) : base(pageNo, pages)
        {
            this.m_Cancel = false;
            this.Cancel = false;
        }

        /// -----------------------------------------------------------------------------
        /// <summary>
        /// Constructs a custom WizardEventArgs object
        /// </summary>
        /// <remarks>
        /// </remarks>
        /// <param name="pageNo">The Page No where the Event happened</param>
        /// <param name="prevNo">The Page No where the Event happened</param>
        /// <param name="pages">The WizardPageCollection</param>
        /// <history>
        /// [cnurse]	10/10/2004	created
        /// </history>
        /// -----------------------------------------------------------------------------
        public WizardCancelEventArgs(int pageNo, int prevNo, WizardPageCollection pages) : base(pageNo, prevNo, pages)
        {
            this.m_Cancel = false;
            this.Cancel = false;
        }

        public bool Cancel
        {
            get
            {
                return this.m_Cancel;
            }
            set
            {
                this.m_Cancel = value;
            }
        }
    }
}

